/**
 * <copyright>
 * </copyright>
 *
 * 
 */
package de.claaswilke.presents.resource.presents.mopp;

public class PresentsProblem implements de.claaswilke.presents.resource.presents.IPresentsProblem {
	
	private String message;
	private de.claaswilke.presents.resource.presents.PresentsEProblemType type;
	private de.claaswilke.presents.resource.presents.PresentsEProblemSeverity severity;
	private java.util.Collection<de.claaswilke.presents.resource.presents.IPresentsQuickFix> quickFixes;
	
	public PresentsProblem(String message, de.claaswilke.presents.resource.presents.PresentsEProblemType type, de.claaswilke.presents.resource.presents.PresentsEProblemSeverity severity) {
		this(message, type, severity, java.util.Collections.<de.claaswilke.presents.resource.presents.IPresentsQuickFix>emptySet());
	}
	
	public PresentsProblem(String message, de.claaswilke.presents.resource.presents.PresentsEProblemType type, de.claaswilke.presents.resource.presents.PresentsEProblemSeverity severity, de.claaswilke.presents.resource.presents.IPresentsQuickFix quickFix) {
		this(message, type, severity, java.util.Collections.singleton(quickFix));
	}
	
	public PresentsProblem(String message, de.claaswilke.presents.resource.presents.PresentsEProblemType type, de.claaswilke.presents.resource.presents.PresentsEProblemSeverity severity, java.util.Collection<de.claaswilke.presents.resource.presents.IPresentsQuickFix> quickFixes) {
		super();
		this.message = message;
		this.type = type;
		this.severity = severity;
		this.quickFixes = new java.util.LinkedHashSet<de.claaswilke.presents.resource.presents.IPresentsQuickFix>();
		this.quickFixes.addAll(quickFixes);
	}
	
	public de.claaswilke.presents.resource.presents.PresentsEProblemType getType() {
		return type;
	}
	
	public de.claaswilke.presents.resource.presents.PresentsEProblemSeverity getSeverity() {
		return severity;
	}
	
	public String getMessage() {
		return message;
	}
	
	public java.util.Collection<de.claaswilke.presents.resource.presents.IPresentsQuickFix> getQuickFixes() {
		return quickFixes;
	}
	
}
